


namespace Core.Extensions
{
    using System;
    using System.Collections.Generic;
    using Base;
    using Contracts.Enums;
    using Contracts.Interfaces;
    using Resources;

    /// <summary>
    /// Target analysis Extension class
    /// </summary>
    
    public sealed class TargetAnalysis: ExtensionBase
    {
        /// <summary>
        /// Create a new instance of the <see cref="T:Core.Extensions.TargetAnalysis"/> class.
        /// </summary>
        public TargetAnalysis()
            : base(
                Traduction.extensions_target_analysis, 
                ExtensionGroupsEnum.WeaponUsage,
                4,
                0, 
                new ExtensionCost(80000,0),
                null )
        {
            
            
            Modifiers = new IModifier[]
                            {
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.SmallMagneticWeaponDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.MediumMagneticWeaponDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.SmallFirearmDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.MediumFirearmDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.SmallLaserDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.MediumLaserDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.SmallMissileLauncherDamage, 0.01),
                                new Modifier(FeatureTypesEnum.Module, FeaturesEnum.MediumMissileLauncherDamage, 0.01),
                            };
        }

        /// <summary>
        /// Obtains the extension description
        /// </summary>
        public override string Description
        {
            get { return Traduction.extensions_target_analysis_description; }
        }
    }
}